Skip to content

Conversation

tsck
Copy link
Collaborator

@tsck tsck commented Oct 6, 2025

✍️ Proposed changes

  • Adds a custom search panel to the CodeEditor component. Contains all of the same functionality that was in the built in panel but matches the LG design language.
  • Adds prop to allow consumers to enable/disable the search panel.

🎟 Jira ticket: LG-5098

✅ Checklist

For bug fixes, new features & breaking changes

  • I have added stories/tests that prove my fix is effective or that my feature works
  • I have added necessary documentation (if appropriate)
  • I have run pnpm changeset and documented my changes

🧪 How to test changes

  • Pull up using CMD/CTRL+F in storybook
  • All previous tests are passing
  • New tests are passing

Copy link

changeset-bot bot commented Oct 6, 2025

🦋 Changeset detected

Latest commit: d743a1b

The changes in this PR will be included in the next version bump.

This PR includes changesets to release 1 package
Name Type
@leafygreen-ui/code-editor Minor

Not sure what this means? Click here to learn what changesets are.

Click here if you're a maintainer who wants to add another changeset to this PR

Copy link
Contributor

github-actions bot commented Oct 6, 2025

Size Change: +4.92 kB (+0.31%)

Total Size: 1.59 MB

Filename Size Change
packages/code-editor/dist/esm/index.js 17.8 kB +2.33 kB (+15.04%) ⚠️
packages/code-editor/dist/umd/index.js 18.1 kB +2.4 kB (+15.3%) ⚠️
packages/icon/dist/umd/index.js 35.7 kB +185 B (+0.52%)
ℹ️ View Unchanged
Filename Size
charts/chart-card/dist/esm/index.js 2.78 kB
charts/chart-card/dist/umd/index.js 2.95 kB
charts/colors/dist/esm/index.js 530 B
charts/colors/dist/umd/index.js 657 B
charts/core/dist/esm/index.js 16.1 kB
charts/core/dist/umd/index.js 16.4 kB
charts/drag-provider/dist/esm/index.js 1.37 kB
charts/drag-provider/dist/umd/index.js 1.49 kB
charts/legend/dist/esm/index.js 1.52 kB
charts/legend/dist/umd/index.js 1.69 kB
charts/series-provider/dist/esm/index.js 1.28 kB
charts/series-provider/dist/umd/index.js 1.41 kB
chat/avatar/dist/esm/index.js 1.36 kB
chat/avatar/dist/umd/index.js 1.53 kB
chat/chat-window/dist/esm/index.js 1.67 kB
chat/chat-window/dist/umd/index.js 1.85 kB
chat/fixed-chat-window/dist/esm/index.js 2.4 kB
chat/fixed-chat-window/dist/umd/index.js 2.59 kB
chat/input-bar/dist/esm/index.js 7.74 kB
chat/input-bar/dist/umd/index.js 7.98 kB
chat/leafygreen-chat-provider/dist/esm/index.js 957 B
chat/leafygreen-chat-provider/dist/umd/index.js 1.11 kB
chat/lg-markdown/dist/esm/index.js 2.19 kB
chat/lg-markdown/dist/umd/index.js 2.33 kB
chat/message-feed/dist/esm/index.js 2.8 kB
chat/message-feed/dist/umd/index.js 3.03 kB
chat/message-feedback/dist/esm/index.js 4.5 kB
chat/message-feedback/dist/umd/index.js 4.72 kB
chat/message-prompts/dist/esm/index.js 1.78 kB
chat/message-prompts/dist/umd/index.js 1.93 kB
chat/message-rating/dist/esm/index.js 2.58 kB
chat/message-rating/dist/umd/index.js 2.77 kB
chat/message/dist/esm/index.js 8.27 kB
chat/message/dist/umd/index.js 8.53 kB
chat/rich-links/dist/esm/index.js 2.38 kB
chat/rich-links/dist/umd/index.js 2.58 kB
chat/suggestions/dist/esm/index.js 1.65 kB
chat/suggestions/dist/esm/testing/index.js 55 B
chat/suggestions/dist/umd/index.js 1.85 kB
chat/suggestions/dist/umd/testing/index.js 113 B
chat/title-bar/dist/esm/index.js 1.38 kB
chat/title-bar/dist/umd/index.js 1.6 kB
packages/a11y/dist/esm/index.js 1.71 kB
packages/a11y/dist/umd/index.js 1.83 kB
packages/avatar/dist/esm/index.js 3.4 kB
packages/avatar/dist/umd/index.js 3.58 kB
packages/badge/dist/esm/index.js 1.47 kB
packages/badge/dist/umd/index.js 1.67 kB
packages/banner/dist/esm/index.js 3.19 kB
packages/banner/dist/umd/index.js 3.5 kB
packages/button/dist/esm/constants.js 121 B
packages/button/dist/esm/index.js 4.8 kB
packages/button/dist/esm/testing/index.js 321 B
packages/button/dist/umd/constants.js 262 B
packages/button/dist/umd/index.js 4.99 kB
packages/button/dist/umd/testing/index.js 443 B
packages/callout/dist/esm/index.js 1.55 kB
packages/callout/dist/umd/index.js 1.74 kB
packages/card/dist/esm/index.js 1.52 kB
packages/card/dist/umd/index.js 1.71 kB
packages/checkbox/dist/esm/index.js 4.28 kB
packages/checkbox/dist/umd/index.js 4.48 kB
packages/chip/dist/esm/index.js 3.21 kB
packages/chip/dist/umd/index.js 3.42 kB
packages/code-editor/dist/esm/testing/index.js 4.2 kB
packages/code-editor/dist/umd/testing/index.js 4.34 kB
packages/code/dist/esm/index.js 10.5 kB
packages/code/dist/esm/testing/index.js 11.3 kB
packages/code/dist/umd/index.js 11.1 kB
packages/code/dist/umd/testing/index.js 11.9 kB
packages/combobox/dist/esm/index.js 11.5 kB
packages/combobox/dist/umd/index.js 11.8 kB
packages/confirmation-modal/dist/esm/index.js 2.62 kB
packages/confirmation-modal/dist/umd/index.js 2.84 kB
packages/context-drawer/dist/esm/index.js 3.12 kB
packages/context-drawer/dist/esm/testing/index.js 3.52 kB
packages/context-drawer/dist/umd/index.js 3.29 kB
packages/context-drawer/dist/umd/testing/index.js 3.68 kB
packages/copyable/dist/esm/index.js 2.78 kB
packages/copyable/dist/umd/index.js 2.99 kB
packages/date-picker/dist/esm/index.js 13.6 kB
packages/date-picker/dist/umd/index.js 14 kB
packages/date-utils/dist/esm/index.js 2.7 kB
packages/date-utils/dist/esm/testing/index.js 1.35 kB
packages/date-utils/dist/umd/index.js 2.8 kB
packages/date-utils/dist/umd/testing/index.js 1.49 kB
packages/descendants/dist/esm/index.js 2.81 kB
packages/descendants/dist/umd/index.js 2.93 kB
packages/drawer/dist/esm/index.js 7.94 kB
packages/drawer/dist/esm/testing/index.js 490 B
packages/drawer/dist/umd/index.js 8.13 kB
packages/drawer/dist/umd/testing/index.js 610 B
packages/emotion/dist/esm/index.js 357 B
packages/emotion/dist/umd/index.js 571 B
packages/empty-state/dist/esm/index.js 1.75 kB
packages/empty-state/dist/umd/index.js 1.94 kB
packages/expandable-card/dist/esm/index.js 2.95 kB
packages/expandable-card/dist/esm/testing/index.js 3.47 kB
packages/expandable-card/dist/umd/index.js 3.2 kB
packages/expandable-card/dist/umd/testing/index.js 3.68 kB
packages/form-field/dist/esm/index.js 4.37 kB
packages/form-field/dist/umd/index.js 4.53 kB
packages/form-footer/dist/esm/index.js 1.69 kB
packages/form-footer/dist/umd/index.js 1.92 kB
packages/gallery-indicator/dist/esm/index.js 1.39 kB
packages/gallery-indicator/dist/esm/testing/index.js 351 B
packages/gallery-indicator/dist/umd/index.js 1.55 kB
packages/gallery-indicator/dist/umd/testing/index.js 481 B
packages/guide-cue/dist/esm/index.js 5.17 kB
packages/guide-cue/dist/umd/index.js 5.38 kB
packages/hooks/dist/esm/index.js 3.61 kB
packages/hooks/dist/umd/index.js 3.75 kB
packages/icon-button/dist/esm/index.js 2.28 kB
packages/icon-button/dist/umd/index.js 2.49 kB
packages/icon/dist/esm/ActivityFeed.js 1.11 kB
packages/icon/dist/esm/AddFile.js 903 B
packages/icon/dist/esm/AIModel.js 772 B
packages/icon/dist/esm/AllProducts.js 995 B
packages/icon/dist/esm/AnalyticsNode.js 762 B
packages/icon/dist/esm/Apps.js 604 B
packages/icon/dist/esm/Array.js 718 B
packages/icon/dist/esm/ArrowDown.js 828 B
packages/icon/dist/esm/ArrowLeft.js 833 B
packages/icon/dist/esm/ArrowRight.js 828 B
packages/icon/dist/esm/ArrowUp.js 828 B
packages/icon/dist/esm/Award.js 1.24 kB
packages/icon/dist/esm/Beaker.js 1.24 kB
packages/icon/dist/esm/Bell.js 797 B
packages/icon/dist/esm/Biometric.js 1.33 kB
packages/icon/dist/esm/Boolean.js 648 B
packages/icon/dist/esm/Building.js 793 B
packages/icon/dist/esm/Bulb.js 828 B
packages/icon/dist/esm/Calendar.js 794 B
packages/icon/dist/esm/Camera.js 874 B
packages/icon/dist/esm/Cap.js 976 B
packages/icon/dist/esm/CaretDown.js 665 B
packages/icon/dist/esm/CaretLeft.js 662 B
packages/icon/dist/esm/CaretRight.js 657 B
packages/icon/dist/esm/CaretUp.js 664 B
packages/icon/dist/esm/ChartFilled.js 761 B
packages/icon/dist/esm/Charts.js 745 B
packages/icon/dist/esm/Checkmark.js 789 B
packages/icon/dist/esm/CheckmarkWithCircle.js 851 B
packages/icon/dist/esm/ChevronDown.js 763 B
packages/icon/dist/esm/ChevronLeft.js 763 B
packages/icon/dist/esm/ChevronRight.js 772 B
packages/icon/dist/esm/ChevronUp.js 754 B
packages/icon/dist/esm/Circle.js 545 B
packages/icon/dist/esm/Clock.js 816 B
packages/icon/dist/esm/ClockWithArrow.js 1.06 kB
packages/icon/dist/esm/Clone.js 700 B
packages/icon/dist/esm/Cloud.js 861 B
packages/icon/dist/esm/Code.js 1.05 kB
packages/icon/dist/esm/CodeBlock.js 997 B
packages/icon/dist/esm/Coin.js 1.1 kB
packages/icon/dist/esm/Colon.js 654 B
packages/icon/dist/esm/Config.js 946 B
packages/icon/dist/esm/Connect.js 1.09 kB
packages/icon/dist/esm/Copy.js 1.04 kB
packages/icon/dist/esm/CreditCard.js 626 B
packages/icon/dist/esm/CurlyBraces.js 1.2 kB
packages/icon/dist/esm/Cursor.js 747 B
packages/icon/dist/esm/Dashboard.js 767 B
packages/icon/dist/esm/Database.js 1.19 kB
packages/icon/dist/esm/Diagram.js 840 B
packages/icon/dist/esm/Diagram2.js 845 B
packages/icon/dist/esm/Diagram3.js 824 B
packages/icon/dist/esm/Disconnect.js 1.04 kB
packages/icon/dist/esm/Download.js 962 B
packages/icon/dist/esm/Drag.js 808 B
packages/icon/dist/esm/Edit.js 707 B
packages/icon/dist/esm/Ellipsis.js 699 B
packages/icon/dist/esm/Email.js 884 B
packages/icon/dist/esm/EmptyDatabase.js 3.36 kB
packages/icon/dist/esm/EmptyFolder.js 1.27 kB
packages/icon/dist/esm/Eraser.js 947 B
packages/icon/dist/esm/Escalation.js 846 B
packages/icon/dist/esm/Export.js 958 B
packages/icon/dist/esm/Favorite.js 907 B
packages/icon/dist/esm/Federation.js 1.21 kB
packages/icon/dist/esm/File.js 732 B
packages/icon/dist/esm/Filter.js 719 B
packages/icon/dist/esm/Folder.js 637 B
packages/icon/dist/esm/Format.js 1.04 kB
packages/icon/dist/esm/FullScreenEnter.js 884 B
packages/icon/dist/esm/FullScreenExit.js 890 B
packages/icon/dist/esm/Function.js 1.85 kB
packages/icon/dist/esm/Gauge.js 899 B
packages/icon/dist/esm/GlobeAmericas.js 831 B
packages/icon/dist/esm/glyphCommon-D-w_icbF.js 814 B
packages/icon/dist/esm/GovernmentBuilding.js 871 B
packages/icon/dist/esm/Guide.js 1.16 kB
packages/icon/dist/esm/Hash.js 1.01 kB
packages/icon/dist/esm/HiddenSecondaryNode.js 2.24 kB
packages/icon/dist/esm/Highlight.js 1.04 kB
packages/icon/dist/esm/Home.js 970 B
packages/icon/dist/esm/HorizontalDrag.js 816 B
packages/icon/dist/esm/Import.js 951 B
packages/icon/dist/esm/ImportantWithCircle.js 735 B
packages/icon/dist/esm/index.js 35.2 kB
packages/icon/dist/esm/InfoWithCircle.js 765 B
packages/icon/dist/esm/InternalEmployee.js 1.03 kB
packages/icon/dist/esm/InviteUser.js 1.05 kB
packages/icon/dist/esm/Key.js 866 B
packages/icon/dist/esm/Laptop.js 849 B
packages/icon/dist/esm/LightningBolt.js 729 B
packages/icon/dist/esm/Link.js 1.19 kB
packages/icon/dist/esm/List.js 875 B
packages/icon/dist/esm/Lock.js 818 B
packages/icon/dist/esm/LogIn.js 889 B
packages/icon/dist/esm/LogOut.js 946 B
packages/icon/dist/esm/MagnifyingGlass.js 798 B
packages/icon/dist/esm/Megaphone.js 771 B
packages/icon/dist/esm/Menu.js 690 B
packages/icon/dist/esm/Minus.js 641 B
packages/icon/dist/esm/Mobile.js 641 B
packages/icon/dist/esm/Moon.js 808 B
packages/icon/dist/esm/MultiDirectionArrow.js 844 B
packages/icon/dist/esm/MultiLayers.js 1.77 kB
packages/icon/dist/esm/NavCollapse.js 864 B
packages/icon/dist/esm/NavExpand.js 872 B
packages/icon/dist/esm/NoFilter.js 848 B
packages/icon/dist/esm/NotAllowed.js 749 B
packages/icon/dist/esm/Note.js 783 B
packages/icon/dist/esm/NumberedList.js 1.63 kB
packages/icon/dist/esm/OpenNewTab.js 1.03 kB
packages/icon/dist/esm/OutlineFavorite.js 1.17 kB
packages/icon/dist/esm/Package.js 1.02 kB
packages/icon/dist/esm/Pause.js 689 B
packages/icon/dist/esm/Pending.js 672 B
packages/icon/dist/esm/Person.js 845 B
packages/icon/dist/esm/PersonGroup.js 1.04 kB
packages/icon/dist/esm/PersonWithLock.js 1.04 kB
packages/icon/dist/esm/Pin.js 792 B
packages/icon/dist/esm/Play.js 675 B
packages/icon/dist/esm/Plus.js 698 B
packages/icon/dist/esm/PlusWithCircle.js 728 B
packages/icon/dist/esm/Primary.js 745 B
packages/icon/dist/esm/Project.js 784 B
packages/icon/dist/esm/QuestionMarkWithCircle.js 1.07 kB
packages/icon/dist/esm/Read.js 1.35 kB
packages/icon/dist/esm/Recommended.js 1.52 kB
packages/icon/dist/esm/Redo.js 1 kB
packages/icon/dist/esm/Refresh.js 1.07 kB
packages/icon/dist/esm/Relationship.js 791 B
packages/icon/dist/esm/ReplicaSet.js 936 B
packages/icon/dist/esm/Resize.js 764 B
packages/icon/dist/esm/Resource.js 1.07 kB
packages/icon/dist/esm/Return.js 849 B
packages/icon/dist/esm/Revert.js 881 B
packages/icon/dist/esm/Router.js 1.53 kB
packages/icon/dist/esm/Save.js 1.26 kB
packages/icon/dist/esm/SearchIndex.js 1.39 kB
packages/icon/dist/esm/Secondary.js 963 B
packages/icon/dist/esm/Serverless.js 913 B
packages/icon/dist/esm/Settings.js 1.33 kB
packages/icon/dist/esm/ShardedCluster.js 1.29 kB
packages/icon/dist/esm/Shell.js 839 B
packages/icon/dist/esm/Shield.js 1.24 kB
packages/icon/dist/esm/Shirt.js 792 B
packages/icon/dist/esm/Shortcut.js 1.33 kB
packages/icon/dist/esm/SMS.js 805 B
packages/icon/dist/esm/SortAscending.js 885 B
packages/icon/dist/esm/SortDescending.js 877 B
packages/icon/dist/esm/Sparkle.js 1.19 kB
packages/icon/dist/esm/SplitHorizontal.js 662 B
packages/icon/dist/esm/SplitVertical.js 658 B
packages/icon/dist/esm/Stitch.js 698 B
packages/icon/dist/esm/Stop.js 550 B
packages/icon/dist/esm/Streaming.js 1.63 kB
packages/icon/dist/esm/String.js 795 B
packages/icon/dist/esm/Sun.js 1.01 kB
packages/icon/dist/esm/Support.js 876 B
packages/icon/dist/esm/Sweep.js 905 B
packages/icon/dist/esm/Table.js 684 B
packages/icon/dist/esm/Tag.js 723 B
packages/icon/dist/esm/TemporaryTable.js 905 B
packages/icon/dist/esm/ThumbsDown.js 983 B
packages/icon/dist/esm/ThumbsUp.js 983 B
packages/icon/dist/esm/TimeSeries.js 1.02 kB
packages/icon/dist/esm/TimeSeriesCollection.js 1.15 kB
packages/icon/dist/esm/Trash.js 713 B
packages/icon/dist/esm/Undo.js 993 B
packages/icon/dist/esm/University.js 1.19 kB
packages/icon/dist/esm/Unlock.js 885 B
packages/icon/dist/esm/Unsorted.js 928 B
packages/icon/dist/esm/UpDownCarets.js 787 B
packages/icon/dist/esm/Upload.js 970 B
packages/icon/dist/esm/VerticalEllipsis.js 709 B
packages/icon/dist/esm/View.js 841 B
packages/icon/dist/esm/Visibility.js 995 B
packages/icon/dist/esm/VisibilityOff.js 1.37 kB
packages/icon/dist/esm/Warning.js 779 B
packages/icon/dist/esm/Wizard.js 1.09 kB
packages/icon/dist/esm/Wrench.js 1.09 kB
packages/icon/dist/esm/Write.js 1.36 kB
packages/icon/dist/esm/X.js 820 B
packages/icon/dist/esm/XWithCircle.js 766 B
packages/icon/dist/umd/ActivityFeed.js 1.96 kB
packages/icon/dist/umd/AddFile.js 1.73 kB
packages/icon/dist/umd/AIModel.js 1.57 kB
packages/icon/dist/umd/AllProducts.js 1.8 kB
packages/icon/dist/umd/AnalyticsNode.js 1.75 kB
packages/icon/dist/umd/Apps.js 1.41 kB
packages/icon/dist/umd/Array.js 1.52 kB
packages/icon/dist/umd/ArrowDown.js 1.65 kB
packages/icon/dist/umd/ArrowLeft.js 1.66 kB
packages/icon/dist/umd/ArrowRight.js 1.65 kB
packages/icon/dist/umd/ArrowUp.js 1.65 kB
packages/icon/dist/umd/Award.js 2.09 kB
packages/icon/dist/umd/Beaker.js 2.08 kB
packages/icon/dist/umd/Bell.js 1.61 kB
packages/icon/dist/umd/Biometric.js 2.18 kB
packages/icon/dist/umd/Boolean.js 1.45 kB
packages/icon/dist/umd/Building.js 1.79 kB
packages/icon/dist/umd/Bulb.js 1.65 kB
packages/icon/dist/umd/Calendar.js 1.6 kB
packages/icon/dist/umd/Camera.js 1.69 kB
packages/icon/dist/umd/Cap.js 1.81 kB
packages/icon/dist/umd/CaretDown.js 1.47 kB
packages/icon/dist/umd/CaretLeft.js 1.47 kB
packages/icon/dist/umd/CaretRight.js 1.46 kB
packages/icon/dist/umd/CaretUp.js 1.47 kB
packages/icon/dist/umd/ChartFilled.js 1.57 kB
packages/icon/dist/umd/Charts.js 1.54 kB
packages/icon/dist/umd/Checkmark.js 1.61 kB
packages/icon/dist/umd/CheckmarkWithCircle.js 1.68 kB
packages/icon/dist/umd/ChevronDown.js 1.57 kB
packages/icon/dist/umd/ChevronLeft.js 1.57 kB
packages/icon/dist/umd/ChevronRight.js 1.59 kB
packages/icon/dist/umd/ChevronUp.js 1.56 kB
packages/icon/dist/umd/Circle.js 1.34 kB
packages/icon/dist/umd/Clock.js 1.63 kB
packages/icon/dist/umd/ClockWithArrow.js 1.92 kB
packages/icon/dist/umd/Clone.js 1.5 kB
packages/icon/dist/umd/Cloud.js 1.68 kB
packages/icon/dist/umd/Code.js 1.89 kB
packages/icon/dist/umd/CodeBlock.js 1.83 kB
packages/icon/dist/umd/Coin.js 1.94 kB
packages/icon/dist/umd/Colon.js 1.45 kB
packages/icon/dist/umd/Config.js 1.77 kB
packages/icon/dist/umd/Connect.js 1.93 kB
packages/icon/dist/umd/Copy.js 1.88 kB
packages/icon/dist/umd/CreditCard.js 1.43 kB
packages/icon/dist/umd/CurlyBraces.js 2.03 kB
packages/icon/dist/umd/Cursor.js 1.56 kB
packages/icon/dist/umd/Dashboard.js 1.57 kB
packages/icon/dist/umd/Database.js 2.03 kB
packages/icon/dist/umd/Diagram.js 1.65 kB
packages/icon/dist/umd/Diagram2.js 1.66 kB
packages/icon/dist/umd/Diagram3.js 1.63 kB
packages/icon/dist/umd/Disconnect.js 1.86 kB
packages/icon/dist/umd/Download.js 1.79 kB
packages/icon/dist/umd/Drag.js 1.61 kB
packages/icon/dist/umd/Edit.js 1.52 kB
packages/icon/dist/umd/Ellipsis.js 1.5 kB
packages/icon/dist/umd/Email.js 1.71 kB
packages/icon/dist/umd/EmptyDatabase.js 4.3 kB
packages/icon/dist/umd/EmptyFolder.js 2.1 kB
packages/icon/dist/umd/Eraser.js 1.78 kB
packages/icon/dist/umd/Escalation.js 1.68 kB
packages/icon/dist/umd/Export.js 1.78 kB
packages/icon/dist/umd/Favorite.js 1.74 kB
packages/icon/dist/umd/Federation.js 2.06 kB
packages/icon/dist/umd/File.js 1.54 kB
packages/icon/dist/umd/Filter.js 1.53 kB
packages/icon/dist/umd/Folder.js 1.43 kB
packages/icon/dist/umd/Format.js 1.86 kB
packages/icon/dist/umd/FullScreenEnter.js 1.69 kB
packages/icon/dist/umd/FullScreenExit.js 1.7 kB
packages/icon/dist/umd/Function.js 2.75 kB
packages/icon/dist/umd/Gauge.js 1.73 kB
packages/icon/dist/umd/GlobeAmericas.js 1.65 kB
packages/icon/dist/umd/GovernmentBuilding.js 1.68 kB
packages/icon/dist/umd/Guide.js 2 kB
packages/icon/dist/umd/Hash.js 1.83 kB
packages/icon/dist/umd/HiddenSecondaryNode.js 3.11 kB
packages/icon/dist/umd/Highlight.js 1.88 kB
packages/icon/dist/umd/Home.js 1.8 kB
packages/icon/dist/umd/HorizontalDrag.js 1.62 kB
packages/icon/dist/umd/Import.js 1.78 kB
packages/icon/dist/umd/ImportantWithCircle.js 1.54 kB
packages/icon/dist/umd/InfoWithCircle.js 1.57 kB
packages/icon/dist/umd/InternalEmployee.js 1.87 kB
packages/icon/dist/umd/InviteUser.js 1.88 kB
packages/icon/dist/umd/Key.js 1.68 kB
packages/icon/dist/umd/Laptop.js 1.67 kB
packages/icon/dist/umd/LightningBolt.js 1.54 kB
packages/icon/dist/umd/Link.js 2.04 kB
packages/icon/dist/umd/List.js 1.68 kB
packages/icon/dist/umd/Lock.js 1.64 kB
packages/icon/dist/umd/LogIn.js 1.71 kB
packages/icon/dist/umd/LogOut.js 1.77 kB
packages/icon/dist/umd/MagnifyingGlass.js 1.6 kB
packages/icon/dist/umd/Megaphone.js 1.58 kB
packages/icon/dist/umd/Menu.js 1.49 kB
packages/icon/dist/umd/Minus.js 1.44 kB
packages/icon/dist/umd/Mobile.js 1.44 kB
packages/icon/dist/umd/Moon.js 1.63 kB
packages/icon/dist/umd/MultiDirectionArrow.js 1.66 kB
packages/icon/dist/umd/MultiLayers.js 2.63 kB
packages/icon/dist/umd/NavCollapse.js 1.68 kB
packages/icon/dist/umd/NavExpand.js 1.69 kB
packages/icon/dist/umd/NoFilter.js 1.67 kB
packages/icon/dist/umd/NotAllowed.js 1.55 kB
packages/icon/dist/umd/Note.js 1.59 kB
packages/icon/dist/umd/NumberedList.js 2.5 kB
packages/icon/dist/umd/OpenNewTab.js 1.88 kB
packages/icon/dist/umd/OutlineFavorite.js 2.01 kB
packages/icon/dist/umd/Package.js 1.85 kB
packages/icon/dist/umd/Pause.js 1.49 kB
packages/icon/dist/umd/Pending.js 1.47 kB
packages/icon/dist/umd/Person.js 1.67 kB
packages/icon/dist/umd/PersonGroup.js 1.87 kB
packages/icon/dist/umd/PersonWithLock.js 1.87 kB
packages/icon/dist/umd/Pin.js 1.61 kB
packages/icon/dist/umd/Play.js 1.48 kB
packages/icon/dist/umd/Plus.js 1.5 kB
packages/icon/dist/umd/PlusWithCircle.js 1.53 kB
packages/icon/dist/umd/Primary.js 1.55 kB
packages/icon/dist/umd/Project.js 1.59 kB
packages/icon/dist/umd/QuestionMarkWithCircle.js 1.91 kB
packages/icon/dist/umd/Read.js 2.2 kB
packages/icon/dist/umd/Recommended.js 2.38 kB
packages/icon/dist/umd/Redo.js 1.85 kB
packages/icon/dist/umd/Refresh.js 1.91 kB
packages/icon/dist/umd/Relationship.js 1.6 kB
packages/icon/dist/umd/ReplicaSet.js 1.76 kB
packages/icon/dist/umd/Resize.js 1.57 kB
packages/icon/dist/umd/Resource.js 1.9 kB
packages/icon/dist/umd/Return.js 1.67 kB
packages/icon/dist/umd/Revert.js 1.71 kB
packages/icon/dist/umd/Router.js 2.38 kB
packages/icon/dist/umd/Save.js 2.1 kB
packages/icon/dist/umd/SearchIndex.js 2.23 kB
packages/icon/dist/umd/Secondary.js 1.79 kB
packages/icon/dist/umd/Serverless.js 1.75 kB
packages/icon/dist/umd/Settings.js 2.17 kB
packages/icon/dist/umd/ShardedCluster.js 2.12 kB
packages/icon/dist/umd/Shell.js 1.67 kB
packages/icon/dist/umd/Shield.js 2.1 kB
packages/icon/dist/umd/Shirt.js 1.61 kB
packages/icon/dist/umd/Shortcut.js 2.18 kB
packages/icon/dist/umd/SMS.js 1.61 kB
packages/icon/dist/umd/SortAscending.js 1.7 kB
packages/icon/dist/umd/SortDescending.js 1.69 kB
packages/icon/dist/umd/Sparkle.js 2.03 kB
packages/icon/dist/umd/SplitHorizontal.js 1.47 kB
packages/icon/dist/umd/SplitVertical.js 1.46 kB
packages/icon/dist/umd/Stitch.js 1.5 kB
packages/icon/dist/umd/Stop.js 1.35 kB
packages/icon/dist/umd/Streaming.js 2.5 kB
packages/icon/dist/umd/String.js 1.61 kB
packages/icon/dist/umd/Sun.js 1.82 kB
packages/icon/dist/umd/Support.js 1.7 kB
packages/icon/dist/umd/Sweep.js 1.72 kB
packages/icon/dist/umd/Table.js 1.49 kB
packages/icon/dist/umd/Tag.js 1.53 kB
packages/icon/dist/umd/TemporaryTable.js 1.73 kB
packages/icon/dist/umd/ThumbsDown.js 1.82 kB
packages/icon/dist/umd/ThumbsUp.js 1.81 kB
packages/icon/dist/umd/TimeSeries.js 1.86 kB
packages/icon/dist/umd/TimeSeriesCollection.js 2 kB
packages/icon/dist/umd/Trash.js 1.52 kB
packages/icon/dist/umd/Undo.js 1.83 kB
packages/icon/dist/umd/University.js 2.03 kB
packages/icon/dist/umd/Unlock.js 1.71 kB
packages/icon/dist/umd/Unsorted.js 1.75 kB
packages/icon/dist/umd/UpDownCarets.js 1.59 kB
packages/icon/dist/umd/Upload.js 1.8 kB
packages/icon/dist/umd/VerticalEllipsis.js 1.51 kB
packages/icon/dist/umd/View.js 1.65 kB
packages/icon/dist/umd/Visibility.js 1.82 kB
packages/icon/dist/umd/VisibilityOff.js 2.23 kB
packages/icon/dist/umd/Warning.js 1.59 kB
packages/icon/dist/umd/Wizard.js 1.94 kB
packages/icon/dist/umd/Wrench.js 1.93 kB
packages/icon/dist/umd/Write.js 2.21 kB
packages/icon/dist/umd/X.js 1.63 kB
packages/icon/dist/umd/XWithCircle.js 1.57 kB
packages/info-sprinkle/dist/esm/index.js 1.83 kB
packages/info-sprinkle/dist/umd/index.js 2.04 kB
packages/inline-definition/dist/esm/index.js 1.71 kB
packages/inline-definition/dist/umd/index.js 1.9 kB
packages/input-option/dist/esm/index.js 2.67 kB
packages/input-option/dist/umd/index.js 2.82 kB
packages/leafygreen-provider/dist/esm/index.js 1.87 kB
packages/leafygreen-provider/dist/umd/index.js 2.03 kB
packages/lib/dist/esm/index.js 3.27 kB
packages/lib/dist/umd/index.js 3.42 kB
packages/loading-indicator/dist/esm/index.js 3.39 kB
packages/loading-indicator/dist/umd/index.js 3.56 kB
packages/logo/dist/esm/index.js 39 kB
packages/logo/dist/umd/index.js 39.4 kB
packages/marketing-modal/dist/esm/index.js 3.55 kB
packages/marketing-modal/dist/umd/index.js 3.75 kB
packages/menu/dist/esm/index.js 8.22 kB
packages/menu/dist/umd/index.js 8.48 kB
packages/modal/dist/esm/index.js 3.3 kB
packages/modal/dist/umd/index.js 3.46 kB
packages/number-input/dist/esm/index.js 5.68 kB
packages/number-input/dist/umd/index.js 5.87 kB
packages/ordered-list/dist/esm/index.js 1.33 kB
packages/ordered-list/dist/umd/index.js 1.5 kB
packages/pagination/dist/esm/index.js 1.69 kB
packages/pagination/dist/umd/index.js 1.94 kB
packages/palette/dist/esm/index.js 411 B
packages/palette/dist/umd/index.js 561 B
packages/password-input/dist/esm/index.js 4.54 kB
packages/password-input/dist/umd/index.js 4.76 kB
packages/pipeline/dist/esm/index.js 7.85 kB
packages/pipeline/dist/umd/index.js 8.12 kB
packages/polymorphic/dist/esm/index.js 1.27 kB
packages/polymorphic/dist/umd/index.js 1.41 kB
packages/popover/dist/esm/index.js 4.98 kB
packages/popover/dist/umd/index.js 5.15 kB
packages/portal/dist/esm/index.js 923 B
packages/portal/dist/umd/index.js 1.09 kB
packages/preview-card/dist/esm/index.js 2.35 kB
packages/preview-card/dist/esm/testing/index.js 2.67 kB
packages/preview-card/dist/umd/index.js 2.5 kB
packages/preview-card/dist/umd/testing/index.js 2.82 kB
packages/progress-bar/dist/esm/index.js 5.55 kB
packages/progress-bar/dist/esm/testing/index.js 507 B
packages/progress-bar/dist/umd/index.js 5.8 kB
packages/progress-bar/dist/umd/testing/index.js 635 B
packages/radio-box-group/dist/esm/index.js 2.87 kB
packages/radio-box-group/dist/umd/index.js 3 kB
packages/radio-group/dist/esm/index.js 3.25 kB
packages/radio-group/dist/umd/index.js 3.4 kB
packages/resizable/dist/esm/index.js 2.48 kB
packages/resizable/dist/umd/index.js 2.58 kB
packages/ripple/dist/esm/index.js 954 B
packages/ripple/dist/umd/index.js 1.05 kB
packages/search-input/dist/esm/index.js 5.9 kB
packages/search-input/dist/umd/index.js 6.12 kB
packages/section-nav/dist/esm/index.js 2.62 kB
packages/section-nav/dist/esm/testing/index.js 2.85 kB
packages/section-nav/dist/umd/index.js 2.76 kB
packages/section-nav/dist/umd/testing/index.js 3.03 kB
packages/segmented-control/dist/esm/index.js 5.44 kB
packages/segmented-control/dist/umd/index.js 5.59 kB
packages/select/dist/esm/index.js 8.69 kB
packages/select/dist/esm/testing/index.js 698 B
packages/select/dist/umd/index.js 8.9 kB
packages/select/dist/umd/testing/index.js 838 B
packages/side-nav/dist/esm/index.js 7.47 kB
packages/side-nav/dist/umd/index.js 7.73 kB
packages/skeleton-loader/dist/esm/index.js 3.19 kB
packages/skeleton-loader/dist/umd/index.js 3.4 kB
packages/split-button/dist/esm/index.js 3.56 kB
packages/split-button/dist/umd/index.js 3.72 kB
packages/stepper/dist/esm/index.js 3.48 kB
packages/stepper/dist/umd/index.js 3.69 kB
packages/table/dist/esm/index.js 8.14 kB
packages/table/dist/esm/testing/index.js 694 B
packages/table/dist/umd/index.js 8.41 kB
packages/table/dist/umd/testing/index.js 814 B
packages/tabs/dist/esm/index.js 5.14 kB
packages/tabs/dist/esm/testing/index.js 597 B
packages/tabs/dist/umd/index.js 5.29 kB
packages/tabs/dist/umd/testing/index.js 717 B
packages/testing-lib/dist/esm/index.js 3.34 kB
packages/testing-lib/dist/umd/index.js 3.56 kB
packages/testing-lib/dist/umd/renderHookServer17.js 385 B
packages/testing-lib/dist/umd/renderHookServer18.js 593 B
packages/text-area/dist/esm/index.js 2.2 kB
packages/text-area/dist/esm/testing/index.js 466 B
packages/text-area/dist/umd/index.js 2.36 kB
packages/text-area/dist/umd/testing/index.js 604 B
packages/text-input/dist/esm/index.js 2.5 kB
packages/text-input/dist/esm/testing/index.js 463 B
packages/text-input/dist/umd/index.js 2.68 kB
packages/text-input/dist/umd/testing/index.js 600 B
packages/toast/dist/esm/index.js 8.23 kB
packages/toast/dist/umd/index.js 8.53 kB
packages/toggle/dist/esm/index.js 3 kB
packages/toggle/dist/esm/testing/index.js 276 B
packages/toggle/dist/umd/index.js 3.19 kB
packages/toggle/dist/umd/testing/index.js 407 B
packages/tokens/dist/esm/index.js 2.83 kB
packages/tokens/dist/umd/index.js 2.94 kB
packages/toolbar/dist/esm/index.js 3.26 kB
packages/toolbar/dist/esm/testing/index.js 527 B
packages/toolbar/dist/umd/index.js 3.4 kB
packages/toolbar/dist/umd/testing/index.js 643 B
packages/tooltip/dist/esm/index.js 4.35 kB
packages/tooltip/dist/umd/index.js 4.63 kB
packages/typography/dist/esm/index.js 5.81 kB
packages/typography/dist/umd/index.js 5.96 kB
packages/vertical-stepper/dist/esm/index.js 3.19 kB
packages/vertical-stepper/dist/umd/index.js 3.39 kB
tools/build/dist/esm/index.js 6.3 kB
tools/build/dist/umd/cli.js 6.64 kB
tools/build/dist/umd/index.js 6.58 kB
tools/cli/dist/esm/index.js 2.33 kB
tools/cli/dist/umd/index.js 2.5 kB
tools/codemods/dist/_virtual/_rollupPluginBabelHelpers.js 936 B
tools/codemods/dist/codemods/modal-v20/transform.js 787 B
tools/codemods/dist/codemods/named-exports/transform.js 760 B
tools/codemods/dist/codemods/popover-v12/transform.js 1.1 kB
tools/codemods/dist/codemods/tabs-v17/transform.js 368 B
tools/codemods/dist/constants.js 148 B
tools/codemods/dist/esm/_virtual/_rollupPluginBabelHelpers.mjs 928 B
tools/codemods/dist/esm/codemods/modal-v20/transform.mjs 788 B
tools/codemods/dist/esm/codemods/named-exports/transform.mjs 747 B
tools/codemods/dist/esm/codemods/popover-v12/transform.mjs 1.09 kB
tools/codemods/dist/esm/codemods/tabs-v17/transform.mjs 366 B
tools/codemods/dist/esm/constants.mjs 148 B
tools/codemods/dist/esm/index.js 3.4 kB
tools/codemods/dist/esm/types.mjs 765 B
tools/codemods/dist/esm/utils/imports/getImportSpecifiersForDeclaration.mjs 280 B
tools/codemods/dist/esm/utils/imports/hasNamedImport.mjs 179 B
tools/codemods/dist/esm/utils/imports/mergeImportSpecifiers.mjs 261 B
tools/codemods/dist/esm/utils/jsx/getJSXAttributes.mjs 160 B
tools/codemods/dist/esm/utils/jsx/insertJSXComment/insertJSXComment.mjs 369 B
tools/codemods/dist/esm/utils/transformations/addJSXAttributes/addJSXAttributes.mjs 412 B
tools/codemods/dist/esm/utils/transformations/consolidateJSXAttributes/consolidateJSXAttributes.mjs 665 B
tools/codemods/dist/esm/utils/transformations/removeJSXAttributes/removeJSXAttributes.mjs 360 B
tools/codemods/dist/esm/utils/transformations/replaceJSXAttributes/replaceJSXAttributes.mjs 278 B
tools/codemods/dist/types.js 765 B
tools/codemods/dist/umd/index.js 3.64 kB
tools/codemods/dist/utils/imports/getImportSpecifiersForDeclaration.js 283 B
tools/codemods/dist/utils/imports/hasNamedImport.js 183 B
tools/codemods/dist/utils/imports/mergeImportSpecifiers.js 260 B
tools/codemods/dist/utils/jsx/getJSXAttributes.js 164 B
tools/codemods/dist/utils/jsx/insertJSXComment/insertJSXComment.js 371 B
tools/codemods/dist/utils/transformations/addJSXAttributes/addJSXAttributes.js 410 B
tools/codemods/dist/utils/transformations/consolidateJSXAttributes/consolidateJSXAttributes.js 664 B
tools/codemods/dist/utils/transformations/removeJSXAttributes/removeJSXAttributes.js 364 B
tools/codemods/dist/utils/transformations/replaceJSXAttributes/replaceJSXAttributes.js 282 B
tools/create/dist/esm/index.js 4.17 kB
tools/create/dist/umd/index.js 4.34 kB
tools/eslint-plugin/dist/esm/index.js 1.08 kB
tools/eslint-plugin/dist/umd/index.js 1.18 kB
tools/install/dist/esm/index.js 2.19 kB
tools/install/dist/umd/index.js 2.35 kB
tools/link/dist/esm/index.js 3.79 kB
tools/link/dist/umd/index.js 3.91 kB
tools/lint/dist/esm/index.js 4.11 kB
tools/lint/dist/umd/index.js 4.25 kB
tools/meta/dist/esm/index.js 1.71 kB
tools/meta/dist/umd/index.js 1.85 kB
tools/prompt-kit/dist/esm/index.js 2.27 kB
tools/prompt-kit/dist/umd/index.js 2.41 kB
tools/slackbot/dist/esm/index.js 4.8 kB
tools/slackbot/dist/umd/index.js 4.97 kB
tools/storybook-addon/dist/esm/index.js 2.22 kB
tools/storybook-addon/dist/esm/main.js 2.22 kB
tools/storybook-addon/dist/esm/manager.js 554 B
tools/storybook-addon/dist/esm/preview.js 1.69 kB
tools/storybook-addon/dist/umd/index.js 2.34 kB
tools/storybook-addon/dist/umd/main.js 2.34 kB
tools/storybook-addon/dist/umd/manager.js 691 B
tools/storybook-addon/dist/umd/preview.js 1.81 kB
tools/storybook-decorators/dist/esm/index.js 3.28 kB
tools/storybook-decorators/dist/umd/index.js 3.57 kB
tools/storybook-utils/dist/esm/index.js 2.77 kB
tools/storybook-utils/dist/umd/index.js 2.9 kB
tools/test-harnesses/dist/esm/index.js 1.78 kB
tools/test-harnesses/dist/umd/index.js 1.91 kB
tools/test/dist/esm/index.js 1.68 kB
tools/test/dist/umd/index.js 1.82 kB
tools/update/dist/esm/index.js 725 B
tools/update/dist/umd/index.js 893 B
tools/validate/dist/esm/index.js 5.75 kB
tools/validate/dist/umd/index.js 5.98 kB

compressed-size-action

@tsck tsck force-pushed the LG-5098/ce-search branch from 9a9de87 to 4e628f3 Compare October 7, 2025 12:27
@tsck tsck marked this pull request as ready for review October 7, 2025 13:52
@tsck tsck requested a review from a team as a code owner October 7, 2025 13:52
@tsck tsck requested review from Copilot and stephl3 and removed request for a team October 7, 2025 13:52
Copy link
Contributor

@Copilot Copilot AI left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Pull Request Overview

This PR adds a custom search panel to the CodeEditor component that replaces CodeMirror's default search UI with one that matches LeafyGreen's design language. The new search panel includes all the same functionality as the built-in panel (find, replace, case sensitivity, regex, etc.) but with improved styling and UX consistency.

  • Introduces a custom SearchPanel component with React-based UI controls
  • Adds an enableSearchPanel prop to allow consumers to control search functionality
  • Conditionally loads the CodeMirror search module only when search is enabled

Reviewed Changes

Copilot reviewed 16 out of 17 changed files in this pull request and generated 5 comments.

Show a summary per file
File Description
packages/code-editor/src/SearchPanel/ New SearchPanel component with React UI and styles
packages/code-editor/src/CodeEditor/CodeEditor.tsx Integrates custom search panel with conditional loading
packages/code-editor/src/CodeEditor/hooks/useModuleLoaders.ts Makes search module loading conditional based on enableSearchPanel prop
packages/code-editor/src/CodeEditor/CodeEditor.types.ts Adds enableSearchPanel prop and updates CSS selectors
packages/code-editor/src/CodeEditor/hooks/extensions/useThemeExtension.ts Updates styling to accommodate the new search panel
packages/code-editor/src/CodeEditor/CodeEditor.spec.tsx Comprehensive test coverage for search panel functionality
Files not reviewed (1)
  • pnpm-lock.yaml: Language not supported

baseFontSize={baseFontSizeProp || baseFontSize}
darkMode={darkMode}
// CodeMirror looks for this attribute to refocus when CMD+F is pressed and the panel is already open
main-field="true"
Copy link
Preview

Copilot AI Oct 7, 2025

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The attribute main-field should use kebab-case naming convention. Consider using data-main-field or aria-main-field to follow HTML standards for custom attributes.

Suggested change
main-field="true"
data-main-field="true"

Copilot uses AI. Check for mistakes.

<div
className={replaceSectionStyles}
// @ts-expect-error - react type issue: https://github.com/facebook/react/pull/24730
inert={!isOpen ? 'inert' : undefined}
Copy link
Preview

Copilot AI Oct 7, 2025

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The inert attribute should be a boolean, not a string. Use inert={!isOpen} instead of inert={!isOpen ? 'inert' : undefined}.

Suggested change
inert={!isOpen ? 'inert' : undefined}
inert={!isOpen}

Copilot uses AI. Check for mistakes.

Comment on lines +323 to +330
const { createRoot } = require('react-dom/client');
const root = createRoot(dom);
root.render(searchPanelElement);

return {
dom,
top: true,
unmount: () => root.unmount(),
Copy link
Preview

Copilot AI Oct 7, 2025

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Using require() inside a function can impact tree-shaking and bundling optimization. Consider using dynamic imports with import() or moving this to a top-level conditional import.

Suggested change
const { createRoot } = require('react-dom/client');
const root = createRoot(dom);
root.render(searchPanelElement);
return {
dom,
top: true,
unmount: () => root.unmount(),
// Use a placeholder while loading react-dom/client dynamically
let root: any = null;
(async () => {
const { createRoot } = await import('react-dom/client');
root = createRoot(dom);
root.render(searchPanelElement);
})();
return {
dom,
top: true,
unmount: () => {
if (root) {
root.unmount();
}
},

Copilot uses AI. Check for mistakes.

line: 1,
column: 1,
content: 'Error message',
messages: ['Error message'],
Copy link
Preview

Copilot AI Oct 7, 2025

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

The test is updating from content to messages array, but this change should be documented or explained in the context of the search panel feature. This appears to be an unrelated API change.

Suggested change
messages: ['Error message'],
content: ['Error message'],

Copilot uses AI. Check for mistakes.

| `enableCodeFolding` _(optional)_ | Enables code folding arrows in the gutter. | `boolean` | `undefined` |
| `enableLineNumbers` _(optional)_ | Enables line numbers in the editor’s gutter. | `boolean` | `true` |
| `enableLineWrapping` _(optional)_ | Enables line wrapping when the text exceeds the editor’s width. | `boolean` | `true` |
| `enableSearchPanel` \_(optional)) | Enables the find and replace search panel in the editor. | `boolean` | `true` |
Copy link
Preview

Copilot AI Oct 7, 2025

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Corrected extra parenthesis and underscore formatting in the table row.

Suggested change
| `enableSearchPanel` \_(optional)) | Enables the find and replace search panel in the editor. | `boolean` | `true` |
| `enableSearchPanel` _(optional)_ | Enables the find and replace search panel in the editor. | `boolean` | `true` |

Copilot uses AI. Check for mistakes.

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

Successfully merging this pull request may close these issues.

1 participant